判斷式、迴圈、集合、迴圈控制
if 布林值(True | False ):
若布林值為True,執行命令
if 布林值(True | False ):
若布林值為True,執行命令
else:
若布林值為False,執行命令
if 布林值一:
若布林值為True,執行命令
elif 布林值二:
若布林值二為,執行命令
else:
若布林值一和二都False,執行命令
小範例1:
x=input("請輸入數字:")
x=int(x)
if x>200:
print("大於 200")
elif x>100:
print("大於 100,小於200")
else:
print("小於 100")
範例2:
題目:小算盤
答案:
while True:
n1=int(input("請輸入數字一:"))
n2=int(input("請輸入數字二:"))
operate=input("輸入運算符號:")
result=0
if operate=='+':
result=n1+n2
print(n1,'+',n2,'=',result)
elif operate=='-':
result=n1-n2
print(n1,'-',n2,'=',result)
elif operate=='*':
result=n1*n2
print(n1,'*',n2,'=',result)
elif operate=='/':
result=n1/n2
print(n1,'/',n2,'=',result)
else:
print("你搞啥阿!")
while 布林值:
若布林值為True,執行命令回到上方,下一次的迴圈判斷
n=1
while n<5:
print("變數n的資料是: ",n) #每跑一次while迴圈,就print一次
n+=1 #n=n+1
for 變數名稱 in 列表或字串:
將列表中的項目或字串中的字元逐一取出,逐一處理
for x in [4,2,1]:
print("逐一取得列表中的資料",x)
結果為何呢?先猜猜看
結果會依序從列表中把值取出來
那...把list改為Tuple可行嗎?(怎麼改先自己想想看喔)
當然可以!因為list、Tuple、dictionary都是列表的一種
for c in "Hello":
print("逐一取得字串中的字元",c)
輸出結果是?
for 變數名稱 in range(3):
#相當於
for 變數名稱 in [0,1,2]:
for x in range(5,10):
print(x)
猜一下答案是什麼吧~
break 和 continue
while 布林值:
break
for 變數名稱 in 列表或字串:
break
break 就是拿來中止回圈用的
我們來看一下兩個程式的差別
n=1
while n<5:
if n==3:
break
n+=1
print(n)
n=1
while n<5:
if n==3:
break
n+=1
print(n)
他們差在哪?
上面的Code只會顯示3是因為n=3,離開迴圈並顯示n的值
下面的Code只會顯示2、3因為print包再回圈內
這個小地方很重要喔
while 布林值:
continue
#-----又或者是----------
for 變數名稱 in 列表或字串:
continue
n=0
for x in [0,1,2,3]:
if x%2==0:
continue
n+=1
print(n)
猜猜看結果是甚麼?
結果會是2,因為1、3不是偶數,不會進入if的判斷式
while 布林值:
若布林值為 True, 執行命令
回到上方,做下一次的迴圈判斷
else:
迴圈結束前,執行此區塊的命令
#-----------又或者是-----------
for 變數名稱 in 列表或字串:
將列表中的項目或字串中的字元
逐一取出,逐一處理
else:
迴圈結束前,執行此區塊的命令
迴圈程式,結束後會run一次底下的else
n=1
while n<5:
print("變數n的資料是:",n)
n+=1
else:
print(n)
#--------又或是-------------
for c in "Hello":
print("逐一取得字串中的字元",c)
else:
print(c)
Python 流程控制:if 判斷式 By 彭彭
Python 流程控制:迴圈基礎,while 迴圈、for 迴圈 By 彭彭
Python 流程控制:迴圈進階控制,break、continue、else 命令 By 彭彭
澎澎的教學網站
澎澎的yt教學頻道